WordPressのインストールをAnsibleでやってみた
こんにちは、岩本です。 もうすっかり2月ですね。 1月はBlogが書けておらず、滑り込みで1月31日に書ければと思ったのですが、日をまたいでしまいました。残念。
WordPressのインストールをAnsibleでやってみました
さて、よく使われるCMSの中にWordpressがありますが、ファイルを展開してブラウザからのウィザードで、とても簡単に利用開始ができます。 それでも(多少の)手間がかかります。 そこで、WordpressのインストールをAnsible化してみました。
hosts: all became: yes tasks: - name: Install wp-cli get_url: url: https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar dest: /usr/local/bin/wp mode: 0755 - name: Download wp core shell: /usr/local/bin/wp core download --locale=jp --path="WORDPRESS-PATH" become: yes become_user: apache - name: Generate wp config shell: /usr/local/bin/wp core config --dbname="DBNAME" --dbuser="DBUSERNAME" --dbpass="DBPASS" --dbhost="DBHOST" --path="WORDPRESS-PATH" become: yes become_user: apache - name: Install wp shell: /usr/local/bin/wp core install --url="DOMAINNAME" --title="SITENAME" --admin_user="ADMINNAME" --admin_password="ADMINPASS" --admin_email="ADMIN-EMAIL" --path="WORDPRESS-PATH" become: yes become_user: apache
解説
WordPressのインストールをAnsibleから行うには、コマンドラインでの操作が必要になります。 コマンドラインでのインストールに関して詳しくはこちらをご覧ください。
- コマンドラインでのインストールを行うために、まずwp-cliを用意します。
- name: Install wp-cli get_url: url: https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar dest: /usr/local/bin/wp mode: 0755
- wp-cliのインストールが完了すれば、順に
core
のダウンロード、wp-config
の生成、インストール
と順に進めていきます。 この際、wp-cli
はroot
ユーザーでの実行が行えません。 当サンプルでは行頭でbecame: yes
としているため、Taskの実行はrootユーザーにて実行されます。 また、Ansibleで接続している以外のユーザーでTaskを実行を行いたい場合があると思います。
- name: Install wp shell: - - - - become: yes become_user: apache
そこで、タスク内にもbecome: yes
become_user: apache
と指定することで、タスク単位でのユーザーの切り替えが可能です。
今回はApacheユーザーにてTaskを実行しています。
OSのセットアップ、ミドルウェアのインストールなどを行うAnsibeleと組み合わせることで、 Wordpressのインストールまでが一度に完結させることも可能かと思います。何かに活用いただけると幸いです。
今日のわさび様
さいきん「わさびちゃん大きくなった?」と聞かれる機会が多くなりましたので、単三電池とわさびちゃんの比較をご覧ください。
今日もわさびちゃんは、すくすく育っています。